﻿
using System;
using System.Collections.Generic;
namespace Plugins.Core.Interfaces
{
    public interface IPluginWindowManager :
        IPluginExecuteConnector<IPluginWindow>
    {
        bool ContainsActive(IPluginWindow window);
        bool Contains(IPluginWindow window);

        IPluginWindow GetActiveWindow(string windowName);
        IPluginWindow GetWindow(string windowName);

        IEnumerable<string> ActiveWindows { get; }
        IEnumerable<string> Windows { get; }
        
        bool Register(IPluginWindow window);
        bool Unregister(IPluginWindow window);

        Guid CreateWindowId();
    }
}
